Skip to content

Use zend_execute_internal always to call internal functions - #178

Closed
smalyshev wants to merge 2 commits into
php:masterfrom
smalyshev:zend_execute_internal
Closed

smalyshev wants to merge 2 commits into
php:masterfrom
smalyshev:zend_execute_internal

Conversation

@smalyshev

Copy link
Copy Markdown
Contributor

This patch restores the use of zend_execute_internal to call internal functions when they are called from another internal function via zend_call_function. This will allow modules to intercept it more efficiently. Unfortunately, this also requires slight API change and may require to fix the overriding function code since new way of calling was added. If the function does anything with execute data, it also would have to consider that some of these data can be wrong for current function if fci parameter is set and take it as overriding authority.

This will allow modules that override zend_execute_internal to intercept
all internal function calls, not just user-internal calls.
@travisbot

Copy link
Copy Markdown

This pull request fails (merged cd5b933 into cec1786).

@php-pulls

Copy link
Copy Markdown

Comment on behalf of stas at php.net:

merged

@php-pulls php-pulls closed this Oct 5, 2012
heyJordanParker added a commit to heyJordanParker/php-sharp that referenced this pull request Oct 13, 2026
…apped ones

The mutants job found two survivors on php#178. Deleting the walk into an
extension's methods and computed properties left every test green, so a PHP
construct in an extension member's body could compile unchecked. Turning
`!report_wrapped_function_call` into its opposite did too, because only the
root package, which the job does not run, tested the replaced-by-syntax report.
Each new row fails with its mutant applied.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants